#ifndef BITMAP_SOCKET_VIA_STREAM_H_H
#define BITMAP_SOCKET_VIA_STREAM_H_H

#include <Objidl.h>
#include <list>

#include "BitmapSocketAdaptor.h"

class BitmapSocketViaStream : public BitmapSocketAdaptor
{
public:
	BitmapSocketViaStream();
	bool CreateBitmapFromSocket(int socketFd);
	bool SaveBitmapToSocket(Bitmap& bitmap, int socketFd);
	boost::shared_ptr<Bitmap> getBitmap() ;
private:
	std::list<IStream*> m_CreatedStream;
	IStream* m_IStream;
	CLSID m_ClsId;
	EncoderParameters m_EncoderParameters;
	unsigned long m_CompressLevel;
};
#endif